package com.ruoyi.skm.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 支付订单对象 skm_order_pay_t
 *
 * @author ruoyi
 * @date 2025-07-20
 */
public class SkmOrderPayT extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 商户号 */
    @Excel(name = "商户号")
    private String mchid;

    /** 付款客户ID */
    @Excel(name = "付款客户ID")
    private Long userId;

    /** 订单编号 */
    @Excel(name = "订单编号")
    private String orderNo;

    /** 订单支付方式(wx-微信 zfb-支付宝) */
    @Excel(name = "订单支付方式(wx-微信 zfb-支付宝)")
    private String orderPayWay;

    /** 订单金额 */
    @Excel(name = "订单金额")
    private BigDecimal orderAmount;

    /** 订单状态(dzf-待支付 zfz-支付中 qxzf-取消支付 yzf-已支付 ytk-已退款) */
    @Excel(name = "订单状态(dzf-待支付 zfz-支付中 qxzf-取消支付 yzf-已支付 ytk-已退款)")
    private String orderStatus;

    /** 订单支付时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "订单支付时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date orderPayTime;

    /** 订单退款时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "订单退款时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date orderTkTime;

    /** 微信支付订单号 */
    @Excel(name = "微信支付订单号")
    private String transactionId;

    public String getTransactionId() {
        return transactionId;
    }

    public void setTransactionId(String transactionId) {
        this.transactionId = transactionId;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }

    public void setMchid(String mchid)
    {
        this.mchid = mchid;
    }

    public String getMchid()
    {
        return mchid;
    }

    public void setUserId(Long userId)
    {
        this.userId = userId;
    }

    public Long getUserId()
    {
        return userId;
    }

    public void setOrderNo(String orderNo)
    {
        this.orderNo = orderNo;
    }

    public String getOrderNo()
    {
        return orderNo;
    }

    public void setOrderPayWay(String orderPayWay)
    {
        this.orderPayWay = orderPayWay;
    }

    public String getOrderPayWay()
    {
        return orderPayWay;
    }

    public void setOrderAmount(BigDecimal orderAmount)
    {
        this.orderAmount = orderAmount;
    }

    public BigDecimal getOrderAmount()
    {
        return orderAmount;
    }

    public void setOrderStatus(String orderStatus)
    {
        this.orderStatus = orderStatus;
    }

    public String getOrderStatus()
    {
        return orderStatus;
    }

    public void setOrderPayTime(Date orderPayTime)
    {
        this.orderPayTime = orderPayTime;
    }

    public Date getOrderPayTime()
    {
        return orderPayTime;
    }

    public void setOrderTkTime(Date orderTkTime)
    {
        this.orderTkTime = orderTkTime;
    }

    public Date getOrderTkTime()
    {
        return orderTkTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("mchid", getMchid())
            .append("userId", getUserId())
            .append("orderNo", getOrderNo())
            .append("orderPayWay", getOrderPayWay())
            .append("orderAmount", getOrderAmount())
            .append("orderStatus", getOrderStatus())
            .append("orderPayTime", getOrderPayTime())
            .append("orderTkTime", getOrderTkTime())
            .append("remark", getRemark())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
